Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- Good design



  Learn Vim Progressively

tl;dr: Want to learn vim (the best text editor known to human kind) the fastest way possible. I suggest you a way. Start by learning the minimal to survive, then integrate slowly all tricks.Vim the Six Billion Dollar editorBetter, Stronger, Faster.Learn vim and it will be your last text editor. There isn’t any better text editor I know. Hard to learn, but incredible to use.I suggest you to learn it in 4 steps:SurviveFeel comfortableFeel Better, Stronger, FasterUse vim ...

   Vim,Learning,Skills,Tips,Steps,Progressi     2011-09-08 10:44:06

  Top Ten Tips for Correct C++ Coding

Brian Overland, long-time Microsoft veteran and author of C++ Without Fear: A Beginner's Guide That Makes You Feel Smart, 2nd Edition, shares 10 of his most hard-earned, time-saving insights from decades of writing and debugging C++ code.My first introduction to the C family of languages was decades ago (yes, I know this dates me horribly). Later I learned C++. I wish someone back then had steered me around the most obvious potholes; it might have saved me hundreds of frustrating hours.I ca...

   C++,Tips,Top,Ten,Magic number,Integer di     2011-09-03 10:58:35

  10 Tips To Make Your C Program Effective

The beauty of any code lies not only in finding the solution to a given problem but is in its simplicity, effectiveness, compactness and efficiency( memory ). Designing the code is harder than actually implementing it. Hence every programmer should keep a couple of basic things in mind while programming in C. Here we introduce you to such 10 ways of standardizing your C code. 1. Avoid unwarranted function calls Consider the following two functions: view source print? 1 void str_print( c...

   C,Tips,Efficient,Speed increment,Recursi     2011-08-05 01:34:16

  Difference Engine: Luddite legacy

AN APOCRYPHAL tale is told about Henry Ford II showing Walter Reuther, the veteran leader of the United Automobile Workers, around a newly automated car plant. “Walter, how are you going to get those robots to pay your union dues,” gibed the boss of Ford Motor Company. Without skipping a beat, Reuther replied, “Henry, how are you going to get them to buy your cars?”Whether the exchange was true or not is irrelevant. The point was that any increase in productivity required...

   Artificial intelligence,Engine,Difference,Human,Computer     2011-11-07 08:33:16

  Functional Programming in C++

Probably everyone reading this has heard “functional programming” put forth as something that is supposed to bring benefits to software development, or even heard it touted as a silver bullet.  However, a trip to Wikipedia for some more information can be initially off-putting, with early references to lambda calculus and formal systems.  It isn’t immediately clear what that has to do with writing better software. My pragmatic summary:  A large fraction of th...

   C++,Functional programming     2012-04-28 06:16:37

  Writing Java codes conforming to coding standard

Recently, I was doing some cleanup to one of my current Java project. I find there are many codes which are not conforming to the Java coding standard. So I list them here and hope that people can improve your codes and write maintainable codes. Format source code and manage imports in Eclipse Eclipse provides functions of auto-formatting and imports management, you can use following shortcuts to use these functions. Ctrl+Shift+F --> Format source code Ctrl+Shift+O -- Manage imports an...

   Java, Code standard,Style     2012-09-18 12:50:28

  Eleven Equations True Computer Science Geeks Should (at Least Pretend to) Know

This idea is a complete rip off an article that appeared in Wired a little while ago and it got me thinking what would my list for Computer Science look like?  Plus I thought it might be a fun post and unlike the Wired list this one goes to eleven.  So here they are in no particular order: Binomial Coefficient The Binomial Coefficient equation generates Pascal’s Triangle and gives you the coefficients for the Binomial Theorem these ideas are often attributed to Pa...

   Algorithms,Computer science,Euler formula,Fermat     2011-11-29 08:42:50

  Currying in Python

What is Currying? Currying is like a kind of incremental binding of function arguments. Let’s define a simple function which takes 5 arguments: 1def f(a, b, c, d, e):2    print(a, b, c, d, e) In a language where currying is supported, f is a function which takes one argument (a) and returns a function which takes 4 arguments. This means that f(5) is the following function: 1def g(b, c, d, e):2    f(5, b, c, d, e) We could emulate this behavior the...

   Python,Curring,Binding,Implement     2012-03-19 12:59:10

  Optimization Tricks used by the Lockless Memory Allocator

With the releasing of the Lockless Memory Allocator under the GPL version 3.0 license, we can now discuss more of the optimization tricks used inside it. Many of these are things you wouldn't want to use in normal code. However, when speed is the ultimate goal, sometimes we need to break a few rules and use code that is a little sneaky.The SlabA slab is a well-known technique for allocating fixed size objects. For a given object size, a chunk of memory is divided up into smaller regions of that ...

   Optimization,Memory allocation     2011-11-16 08:02:16

  SQL Injection through HTTP Headers

During vulnerability assessment or penetration testing, identifying the input vectors of the target application is a primordial step. Sometimes, when dealing with Web application testing, verification routines related to SQL injection flaws discovery are restricted to the GET and POST variables as the unique inputs vectors ever. What about other HTTP header parameters? Aren’t they potential input vectors for SQL injection attacks? How can one test all these HTTP parameters and whic...

   Code security,SQL injection,HTTP header     2012-04-05 11:42:04